package Garagem.Persistencia;

import Negocio.Categoria;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;

/**
 *
 * @author pablo
 */
public class CategoriaDAO extends BaseDAO<Categoria> {

    Connection con;
    
    public void salva(Categoria categoria) {

        try {

            con = Conexao.novaConexao();

            String SQL = "INSERT INTO categoria (descricao) VALUES (?)";
            java.sql.PreparedStatement cmd = con.prepareStatement(SQL);
            cmd.setString(1, categoria.getDescricao());

            if (cmd.executeUpdate() == 0) {
                throw new RuntimeException("Erro ao salvar o tipo");
            }

            con.commit();

        } catch (Exception e) {
            e.printStackTrace();
        }
            try {
                con.rollback();
            } catch (SQLException sqle) {
                System.err.println(sqle);
            }

    }
    
    public Vector<Categoria> listarDescricao() {  
      Vector<Categoria> categorias = new Vector<Categoria>();  
      try  
      {  
         con = Conexao.novaConexao(); 
         
         String SQL = "SELECT descricao FROM categoria";  
         PreparedStatement stm = con.prepareStatement(SQL);  
            
         stm = con.prepareStatement(SQL);
         ResultSet rs =  stm.executeQuery();
         while (rs.next()) {  
            Categoria categoria1 = new Categoria();  
            categoria1.setDescricao(rs.getString("nome"));  
            categorias.add(categoria1);  
         }  
      } catch (SQLException e) {  
         e.printStackTrace();  
      }  
      return categorias;  
   }  


    @Override
    public String tabela() {
        return "categoria";
    }

    @Override
    public Categoria preenche(ResultSet rows) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
    
}
